package com.zmn.oms.dubbo.interfaces.zmn.master.order;

import com.zmn.common.dto2.ResponseDTO;
import com.zmn.oms.common.dio.attachment.ModifyOrderWorkAttachmentDIO;
import com.zmn.oms.common.dio.attachment.OrderWorkAttachmentDIO;
import com.zmn.oms.common.dro.work.attachment.OrderWorkAttachmentDRO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;

import javax.validation.constraints.NotNull;

/**
 * 类描述：师傅工单附件列表
 *
 * 因迁移贴花照数据，需要一个符合新需求的工单附件类，保留本类为了解决老数据兼容问题。
 * @author liuying
 * @date 2021/06/11 15:22
 * @see com.zmn.oms.dubbo.interfaces.normal.master.MasterOrderAttachmentListRemoteService
 */
@Api(
        value = "师傅工单附件列表",
        tags = {"师傅工单附件列表"}
)
@Deprecated
public interface MasterWorkAttachmentListRemoteService {
    /**
     * 查询工单附件列表
     *
     * @param orderWorkAttachmentDIO
     * @return
     */
    @ApiOperation(
            value = "根据渠道配置查询师傅工单附件",
            response = ResponseDTO.class,
            tags = {"根据渠道配置查询师傅工单附件"}
    )
    ResponseDTO<OrderWorkAttachmentDRO> listOrderWorkAttachmentByQuery(@NotNull(message = "入参不能为空") @ApiParam(value = "入参", required = true)
                                                                               OrderWorkAttachmentDIO orderWorkAttachmentDIO);

    /**
     * 获取工单附件配置
     *
     * @param confAttachmentId
     */
    @ApiOperation(value = "获取工单附件配置", response = ResponseDTO.class)
    ResponseDTO getConfOrderAttachmentByKey(@NotNull(message = "入参不能为空") @ApiParam(value = "附件配置Id", required = true)Integer confAttachmentId);

    /**
     * 保存工单附件
     *
     * @param
     */
    @ApiOperation(value = "保存工单附件", response = ResponseDTO.class)
    ResponseDTO modifyOrderWorkAttachment(@NotNull(message = "入参不能为空") @ApiParam(value = "附件", required = true)
                                                  ModifyOrderWorkAttachmentDIO modifyOrderWorkAttachmentDIO);

    /**
     * 工单附件必填校验
     *
     * @param
     */
    @ApiOperation(value = "工单附件必填校验", response = ResponseDTO.class)
    ResponseDTO requireOrderChannelAttachment(@NotNull(message = "入参不能为空") @ApiParam(value = "附件", required = true)
                                                      OrderWorkAttachmentDIO orderWorkAttachmentDIO);

}
